home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / cross / GBDK-2.0.lha / GBDK / lib / global.s < prev    next >
Text File  |  1998-11-25  |  3KB  |  132 lines

  1.     .START        = 0x80
  2.     .SELECT        = 0x40
  3.     .B        = 0x20
  4.     .A        = 0x10
  5.     .DOWN        = 0x08
  6.     .UP        = 0x04
  7.     .LEFT        = 0x02
  8.     .RIGHT        = 0x01
  9.  
  10.     .SCREENWIDTH    = 0xA0
  11.     .SCREENHEIGHT    = 0x90
  12.     .MINWNDPOSX    = 0x07
  13.     .MINWNDPOSY    = 0x00
  14.     .MAXWNDPOSX    = 0xA6
  15.     .MAXWNDPOSY    = 0x8F
  16.  
  17.     .VBL_IFLAG    = 0x01
  18.     .LCD_IFLAG    = 0x02
  19.     .TIM_IFLAG    = 0x04
  20.     .SIO_IFLAG    = 0x08
  21.     .JOY_IFLAG    = 0x10
  22.  
  23.     .P1        = 0x00    ; Joystick: 1.1.P15.P14.P13.P12.P11.P10
  24.     .SB        = 0x01    ; Serial IO data buffer
  25.     .SC        = 0x02    ; Serial IO control register
  26.     .DIV        = 0x04    ; Divider register
  27.     .TIMA        = 0x05    ; Timer counter
  28.     .TMA        = 0x06    ; Timer modulo
  29.     .TAC        = 0x07    ; Timer control
  30.     .IF        = 0x0F    ; Interrupt flags: 0.0.0.JST.SIO.TIM.LCD.VBL
  31.     .NR10        = 0x10    ; Sound register
  32.     .NR11        = 0x11    ; Sound register
  33.     .NR12        = 0x12    ; Sound register
  34.     .NR13        = 0x13    ; Sound register
  35.     .NR14        = 0x14    ; Sound register
  36.     .NR21        = 0x16    ; Sound register
  37.     .NR22        = 0x17    ; Sound register
  38.     .NR23        = 0x18    ; Sound register
  39.     .NR24        = 0x19    ; Sound register
  40.     .NR30        = 0x1A    ; Sound register
  41.     .NR31        = 0x1B    ; Sound register
  42.     .NR32        = 0x1C    ; Sound register
  43.     .NR33        = 0x1D    ; Sound register
  44.     .NR34        = 0x1E    ; Sound register
  45.     .NR41        = 0x20    ; Sound register
  46.     .NR42        = 0x21    ; Sound register
  47.     .NR43        = 0x22    ; Sound register
  48.     .NR44        = 0x23    ; Sound register
  49.     .NR50        = 0x24    ; Sound register
  50.     .NR51        = 0x25    ; Sound register
  51.     .NR52        = 0x26    ; Sound register
  52.     .LCDC        = 0x40    ; LCD control
  53.     .STAT        = 0x41    ; LCD status
  54.     .SCY        = 0x42    ; Scroll Y
  55.     .SCX        = 0x43    ; Scroll X
  56.     .LY        = 0x44    ; LCDC Y-coordinate
  57.     .LYC        = 0x45    ; LY compare
  58.     .DMA        = 0x46    ; DMA transfer
  59.     .BGP        = 0x47    ; BG palette data
  60.     .OBP0        = 0x48    ; OBJ palette 0 data
  61.     .OBP1        = 0x49    ; OBJ palette 1 data
  62.     .WY        = 0x4A    ; Window Y coordinate
  63.     .WX        = 0x4B    ; Window X coordinate
  64.     .KEY1        = 0x4D    ; CPU speed
  65.     .VBK        = 0x4F    ; VRAM bank
  66.     .HDMA1        = 0x51    ; DMA control 1
  67.     .HDMA2        = 0x52    ; DMA control 2
  68.     .HDMA3        = 0x53    ; DMA control 3
  69.     .HDMA4        = 0x54    ; DMA control 4
  70.     .HDMA5        = 0x55    ; DMA control 5
  71.     .RP        = 0x56    ; IR port
  72.     .BCPS        = 0x68    ; BG color palette specification
  73.     .BCPD        = 0x69    ; BG color palette data
  74.     .OCPS        = 0x6A    ; OBJ color palette specification
  75.     .OCPD        = 0x6B    ; OBJ color palette data
  76.     .SVBK        = 0x70    ; WRAM bank
  77.     .IE        = 0xFF    ; Interrupt enable
  78.  
  79.     .G_MODE        = 0x01    ; Graphic mode
  80.     .T_MODE        = 0x02    ; Text mode (bit 2)
  81.     .T_MODE_OUT    = 0x02    ; Text mode output only
  82.     .T_MODE_INOUT    = 0x03    ; Text mode with input
  83.  
  84.     ;; Status codes for IO
  85.     .IO_IDLE    = 0x00
  86.     .IO_SENDING    = 0x01
  87.     .IO_RECEIVING    = 0x02
  88.     .IO_ERROR    = 0x04
  89.  
  90.     ;; Type of IO data
  91.     .DT_IDLE    = 0x66
  92.     .DT_RECEIVING    = 0x55
  93.  
  94.     ;; Table of routines for modes
  95.     .MODE_TABLE    = 0x01E0
  96.  
  97.     ;; Global variables
  98.     .globl    .mode
  99.  
  100.     .globl    __cpu
  101.  
  102.     .globl    __io_out
  103.     .globl    __io_in
  104.     .globl    __io_status
  105.  
  106.     ;; Global routines
  107.     .globl    .set_mode
  108.  
  109.     .globl    .reset
  110.  
  111.     .globl    .display_off
  112.  
  113.     .globl    .wait_vbl_done
  114.  
  115.     ;; Interrupt routines 
  116.     .globl    .add_VBL
  117.     .globl    .add_LCD
  118.     .globl    .add_TIM
  119.     .globl    .add_SIO
  120.     .globl    .add_JOY
  121.  
  122.     ;; Symbols defined at link time
  123.     .globl    .STACK
  124.     .globl    .OAM
  125.     .globl    .refresh_OAM
  126.  
  127.     ;; Initialization routine   
  128.     .globl    .init
  129.  
  130.     ;; Main user routine    
  131.     .globl    _main
  132.